home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / include / dbm / winfile.h < prev   
C/C++ Source or Header  |  2006-05-08  |  3KB  |  113 lines

  1.  
  2. /* ---------------------------------------------------------------------------
  3.     Stuff to fake unix file I/O on windows boxes
  4.     ------------------------------------------------------------------------*/
  5.  
  6. #ifndef WINFILE_H
  7. #define WINFILE_H
  8.  
  9. #ifdef _WINDOWS
  10. /* hacked out of <dirent.h> on an SGI */
  11. #if defined(XP_WIN32) || defined(_WIN32)
  12. /* 32-bit stuff here */
  13. #include <windows.h>
  14. #include <stdlib.h>
  15. #ifdef __MINGW32__
  16. #include <sys/types.h>
  17. #include <sys/stat.h>
  18. #else
  19. #include <sys\types.h>
  20. #include <sys\stat.h>
  21. #endif
  22.  
  23. typedef struct DIR_Struct {
  24.     void            * directoryPtr;
  25.     WIN32_FIND_DATA   data;
  26. } DIR;
  27.  
  28. #define _ST_FSTYPSZ 16
  29.  
  30. #if !defined(__BORLANDC__) && !defined(__GNUC__)
  31.  typedef unsigned long mode_t;
  32.  typedef          long uid_t;
  33.  typedef          long gid_t;
  34.  
  35. #ifdef WINCE
  36.  typedef          long ino_t;
  37. #else
  38.  typedef          long off_t;
  39. #endif
  40.  
  41.  typedef unsigned long nlink_t;
  42. #endif 
  43.  
  44. typedef struct timestruc {
  45.     time_t  tv_sec;         /* seconds */
  46.     long    tv_nsec;        /* and nanoseconds */
  47. } timestruc_t;
  48.  
  49.  
  50. struct dirent {                                 /* data from readdir() */
  51.         ino_t           d_ino;                  /* inode number of entry */
  52.         off_t           d_off;                  /* offset of disk direntory entry */
  53.         unsigned short  d_reclen;               /* length of this record */
  54.         char            d_name[_MAX_FNAME];     /* name of file */
  55. };
  56.  
  57. #if !defined(__BORLANDC__) && !defined (__GNUC__)
  58. #define S_ISDIR(s)  ((s) & _S_IFDIR)
  59. #endif
  60.  
  61. #else /* _WIN32 */
  62. /* 16-bit windows stuff */
  63.  
  64. #include <sys\types.h>
  65. #include <sys\stat.h>
  66. #include <dos.h>
  67.  
  68.  
  69.  
  70. /*    Getting cocky to support multiple file systems */
  71. typedef struct    dirStruct_tag    {
  72.     struct _find_t    file_data;
  73.     char            c_checkdrive;
  74. } dirStruct;
  75.  
  76. typedef struct DIR_Struct {
  77.     void            * directoryPtr;
  78.     dirStruct         data;
  79. } DIR;
  80.  
  81. #define _ST_FSTYPSZ 16
  82. typedef unsigned long mode_t;
  83. typedef          long uid_t;
  84. typedef          long gid_t;
  85. typedef          long off_t;
  86. typedef unsigned long nlink_t;
  87.  
  88. typedef struct timestruc {
  89.     time_t  tv_sec;         /* seconds */
  90.     long    tv_nsec;        /* and nanoseconds */
  91. } timestruc_t;
  92.  
  93. struct dirent {                             /* data from readdir() */
  94.         ino_t           d_ino;              /* inode number of entry */
  95.         off_t           d_off;              /* offset of disk direntory entry */
  96.         unsigned short  d_reclen;           /* length of this record */
  97. #ifdef XP_WIN32
  98.         char            d_name[_MAX_FNAME]; /* name of file */
  99. #else
  100.         char            d_name[20]; /* name of file */
  101. #endif
  102. };
  103.  
  104. #define S_ISDIR(s)  ((s) & _S_IFDIR)
  105.  
  106. #endif /* 16-bit windows */
  107.  
  108. #define CONST const
  109.  
  110. #endif /* _WINDOWS */
  111.  
  112. #endif /* WINFILE_H */
  113.